//
// Created by mabinjie on 2024/10/28.
//

#ifndef JTT808_BODY_HPP
#define JTT808_BODY_HPP
#include <cstdint>

#include "common/base.hpp"
#include "common/macros.hpp"

namespace protocol {

class jtt808_body :public common::Serializable, public common::Sizeable, public common::ToString {
public:
    uint16_t message_id_{};

    IMPLEMENT_SIZEABLE(message_id_)
    IMPLEMENT_TOSTRING(message_id_)

    jtt808_body() = default;
    explicit jtt808_body(const uint16_t message_id) : message_id_(message_id) {}
    jtt808_body(const jtt808_body &) = default;
    ~jtt808_body() override = default;

    void serialize(common::MessagePackWriter &writer) override {}

    void deserialize(common::MessagePackReader &reader) override {}
};

typedef std::shared_ptr<jtt808_body> jtt808_body_ptr;



}

#endif //JTT808_BODY_HPP
